// ShockDlg.cpp : implementation file
//

#include "stdafx.h"
#include "RGD.h"
#include "ShockDlg.h"


// CShockDlg dialog

IMPLEMENT_DYNAMIC(CShockDlg, CDialog)

CShockDlg::CShockDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CShockDlg::IDD, pParent)
	, m_gridSize(250)
	, m_xSize(0.1f)
	, m_precision(1e-5f)
	, m_experimentTime(0.25)
	, m_clf(0.5)
	, m_gamma(1.4)
	, m_threads(8)
	, m_saveFull(FALSE)
{
}

CShockDlg::~CShockDlg()
{
}

void CShockDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	DDX_Text(pDX, IDC_NUM_CELLS, m_gridSize);
	DDV_MinMaxInt(pDX, m_gridSize, 10, 1000000000);

	DDX_Text(pDX, IDC_X_RANGE, m_xSize);
	DDV_MinMaxFloat(pDX, m_xSize, 0.0000001f, 1000.0f);

	DDX_Text(pDX, IDC_PRECISION, m_precision);
	DDV_MinMaxFloat(pDX, m_precision, FLT_MIN, 1.0f);

	DDX_Text(pDX, IDC_TIME, m_experimentTime);
	DDV_MinMaxFloat(pDX, m_experimentTime, 0.0000001f, 1000.0f);

	DDX_Text(pDX, IDC_CLF, m_clf);
	DDV_MinMaxFloat(pDX, m_clf, 0.0000001f, 10.0f);

	DDX_Text(pDX, IDC_GAMMA, m_gamma);
	DDV_MinMaxFloat(pDX, m_gamma, 0.0000001f, 100.0f);

	DDX_Text(pDX, IDC_THREADS, m_threads);
	DDV_MinMaxInt(pDX, m_threads, 1, 64);

	DDX_Check(pDX, IDC_SAVE_FULL, m_saveFull);
}


BEGIN_MESSAGE_MAP(CShockDlg, CDialog)
END_MESSAGE_MAP()


// CShockDlg message handlers
